The Internet provides access to a vast amount of content. A major challenge given the quantity of content is identifying content that matches a search query provided to a conventional search engine. Upon locating matching content, a search engine result page with the most relevant information is provided to the user that generated the search query.
The conventional search engines perform keyword based matching to locate relevant content. The search query is parsed into keywords that are used to match the content. A match is found based on the similarity between the keyword and terms included in the content. For example, if a user searches for “dinosaurs,” the search engine provides the user with a list of search results that are links to content having terms similar to “dinosaurs,” e.g., “dinosaur.” The search engine may identify “dinosaurs” as a keyword. In turn, the search engine accesses an inverted index to locate content that includes terms similar to the keyword. The inverted index identifies terms and associated content identifiers. The content identifiers link to content having the identified terms. When “dinosaurs” or similar terms are located in the inverted index, the search engine receives a list of content identifiers associated with the terms matching the keyword. The search engine generates search results that include the content identifiers in a ranked order, e.g., similarity or popularity. The similarity rank may be determined by a distance score between the keyword and the index terms. The popularity score may be based on the number of clicks associated with the content. The ranked search results are then transmitted to the client device for display to the user.
Thus, the conventional search engines return search results that match terms included in a search query. The conventional search engines may gather thousands of results for any given query. The search engine, however, only renders the top n results in a search engine result page (SERP). Commonly, n is less than 20. Several SERP are generated to view all of the matching results. In some instances, a user may have to traverse several pages before locating content that the user is interested in. Because search engine queries often consist of keywords or short phrases that are ambiguous in meaning, the SERP provided to the user tend to contain results for the most popular content matching the keyword.